package com.atwork.wuhua.utils;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class StringUtil {
    /**
     * @param key    字符串
     * @param symblo 符号
     * @return 根据符号中获取最后一个索引
     */
    public static String getLastIndexInSymbol(String key) {
        String str = key.substring(key.lastIndexOf("/") + 1);
        return str;
    }

    /**
     * @param key    字符串
     * @param symblo 符号
     * @return 根据符号中获取最后一个索引
     */
    public static String getLastIndexInSymbol(String key, String symblo) {
        String str = key.substring(key.lastIndexOf(symblo) + 1);
        return str;
    }

    /**
     * 从头截取字符串到第几位
     *
     * @param key
     * @param end
     * @return
     */
    public static String getIndexInSymbol(String key, int end) {
        String str = key.substring(0, end);
        return str;
    }

    /**
     * 带， 的字符串 截取所有item
     *
     * @return
     */
    public static List<String> getAllInSymbol(String str) {
        String[] strs = str.split(",");
        List<String> strList = new ArrayList<>();
        for (int i = 0, len = strs.length; i < len; i++) {
            strList.add(strs[i].toString());
            LogUtils.e("str==>" + strs[i].toString());
        }
        return strList;
    }

    //保留小数点几位数
    public static String m1(String str) {
        BigDecimal bg = new BigDecimal(str);
        double f1 = bg.setScale(7, BigDecimal.ROUND_HALF_UP).doubleValue();
        return f1 + "";
    }

    /**
     * 把原始字符串分割成指定长度的字符串列表
     *
     * @param inputString
     *            原始字符串
     * @param length
     *            指定长度
     * @return
     */
    public static List<String> getStrList(String inputString, int length) {
        int size = inputString.length() / length;
        if (inputString.length() % length != 0) {
            size += 1;
        }
        return getStrList(inputString, length, size);
    }

    /**
     * 把原始字符串分割成指定长度的字符串列表
     *
     * @param inputString
     *            原始字符串
     * @param length
     *            指定长度
     * @param size
     *            指定列表大小
     * @return
     */
    public static List<String> getStrList(String inputString, int length,
                                          int size) {
        List<String> list = new ArrayList<String>();
        for (int index = 0; index < size; index++) {
            String childStr = substring(inputString, index * length,
                    (index + 1) * length);
            list.add(childStr);
        }
        return list;
    }
    /**
     * 分割字符串，如果开始位置大于字符串长度，返回空
     *
     * @param str
     *            原始字符串
     * @param f
     *            开始位置
     * @param t
     *            结束位置
     * @return
     */
    public static String substring(String str, int f, int t) {
        if (f > str.length())
            return null;
        if (t > str.length()) {
            return str.substring(f, str.length());
        } else {
            return str.substring(f, t);
        }
    }
}
